1. Field of the Invention
This invention relates generally to digital media files. More specifically, the invention describes playback of compressed digital media files that is substantially free of quantization gaps.
2. Description of Related Art
Recent developments in consumer electronics have included the introduction of multimedia asset player devices (such as the iPOD™ player manufactured by Apple Computer Inc. of Cupertino, Calif.) capable so storing a large number of digital data files such as audio or video files. In some cases, in order to store an ever larger number of data files, various data compression techniques have been used to reduce the size of the stored digital data files. These compression techniques fall into one of two categories, lossless compression (i.e., WAV) that is a class of data compression algorithms that allow the exact original data to be reconstructed from the compressed data or lossy data compression (AAC, MP3) that is a class of data compression algorithms that do not allow the exact original data to be reconstructed from the compressed data.
In either case, in order to encode a raw audio file into a compressed digital format, the audio data must be quantized into digital audio samples. Encoders and decoders reducing the bitrate of a digital audio signal (like MPEG1/2/4-Audio, Dolby Digital AC-3, MP3, ATRAC, Windows Media Audio WMA or Real Audio) typically operate with short-time frequency-domain representations of the signal. In order to convert the signal into this domain, typically a number (e.g. 128, 256, 512, 1024 and 1152) of signal elements are grouped together (referred to as frames or blocks) and thereafter transformed into the frequency domain. Due to the block-based short time transform processing, or the use of filters for splitting the signal into frequency bands, a delay will be introduced. For example, for an audio signal consisting of a single sample value S0 at time instant t0, after encoding and decoding, a signal appears at the decoder output that likewise consists of an individual sample value S0, this sample value however is no longer located at time instant t0 but being shifted.
Furthermore, when encoding a signal of arbitrary length, a typical audio encoder either discards some part of the audio signal at its end or fills up the audio signal with a number of zero-valued samples (stuffing bits). As a result, the length (i.e. the quantity of samples or coefficients) of any encoded or decoded audio signal can be a multiple only of a further multiple of the initial time element mentioned above, i.e. a multiple of the frame or block length that is required by the encoding or decoding process. For example, after a file has been encoded by an encoder, the encoder buffers are “flushed” in preparation for a next file by stuffing a number of dummy samples through the buffers resulting in an encoder dependent “encoding drain” gap in addition to the encoder/decoder delay already discussed. Therefore digital audio files having undergone lossy compression rarely have the same length as the original audio signal (see FIG. 1) having a number of quantization gaps that, in part, are dependent upon the particular encoder used.
Unfortunately, however since a user typically has no apriori knowledge of the particular encoder used to compress a particular file, the user cannot easily compensate for the various quantization gaps and unless these non-audio samples are identified and removed (or otherwise not decoded), resulting in audible distortion (such as a “click” or “pop”) during the transition from one track to another that can prove to be distracting at best. It has become very popular playing back a compressed version of an album which was gapless to begin with, like “Dark Side of the Moon” (other examples are classical albums such as Beethoven's 9th symphony, in which the final movement is typically divided into more than one track but the music itself is continuous) by placing selected digital audio files in a pre-selected order and performing what is referred to as a butt splice. A butt splice is the abrupt connection of one audio file to another audio file so that they become one continuous audio file (along the lines of concept albums such as “Dark Side of the Moon”), which can then, for example, be burned onto a playable storage medium such as a CD. It would therefore be advantageous to be able to perform a distortion free butt splice on any two compressed audio files without requiring a user to have knowledge of the particular encoder(s) used to compress the files in the first place.
Unfortunately, however, if the non-audio samples present at the beginning and the ending of a lossy compressed digital file are not removed, any attempt to butt splice these files together will most likely create an audible distortion (such as a click or a pop) at the junction.
What is required is a method, system, and apparatus for identifying and removing non-audio samples in playback of a digital file that has been compressed using a lossy compression algorithm.